软考真题
第4题
服务型智能扫地机器人涉及了众多传感器,通过对环境信息的融合感知进行行为决策。同时也设计了丰富的多媒体人机交互系统,实现输入输出功能。
服务型智能扫地机器人的输入输出终端采用触摸屏技术,李工设计了一款具有触摸功能的显示单元,该显示单元的主板采用X86架构的处理器,触摸控制板的核心是控制芯片,当触摸笔点击触摸面板时,将通过输入端点上传数据报文,格式如图4-1所示。数据报文按照小端字节顺序发送,第一个Byte表示触摸笔的状态,0x70表示Down, 0x30表示Up,后四个Byte包含触摸笔点击位置的坐标值,Byte1和Byte2表示X轴坐标,Byte3和Byte4表示Y轴坐标。触摸板左上角坐标值为(0, 0),右下角坐标值为(1022,766)。

当触摸笔在触摸板中心位置按下时,触摸屏发送的数据报文内容是(1)、( )( )( )( ),请将答案填写在答题纸的对应栏中。

该机器人系统内部集成众多传感器,通过现场总线互联起来,构成了底层的网络, 选用的CAN控制器内含二个接收缓冲器、三个发送缓冲器,具有灵活的中断管理能力。
李工设计了一种采用中断方式的数据接收程序,每当接收寄存器接收到数据时,中断寄存器的接收中断使能,并产生中断信号通知CPU,中断处理程序在读取数据后,清空中断标识位,等待下一次中断。由于两个接收器共享一个中断号,在调试过程中发现, 当短时间(毫秒级)接收大量数据时,丢包现象比较严重。李工对上述流程进行了改进, 当产生一次中断时,依次查询两路接收器的状态,这样大大提高了数据接收处理能力, 减少了系统开销,其处理流程如图4-2所示。

请将上述改进后的双通道数据接收流程图补充完整,将答案填写在答题纸的对应栏中。

该机器人系统按照图4-2的方式接收传感器采集数据,并由上层应用程序对数据进行处理。当应用访问操作速度和底层硬件输入的速度存在较大差异时,采用环形缓冲 制,可以起到良好的缓冲作用,减少丢包率。李工设计的环形缓冲是基于先进先出(FIFO) 的原则,并设计了环形缓冲的数据结构,读写指针各自独立,读任务和写任务可以同时访问环形缓冲,无需互斥信号量的介入。但是,在运行多任务时,如果存在多个读任务和多个写任务同时操作环形缓冲,则需要应用互斥操作机制。
1.请简述互斥操作的作用。
2.为了在多任务环境中能正确使用环形缓冲,不发生读写冲突,增加了读写锁进行保护。应用任务读取环形缓冲的伪代码如下,请完善其中空( )-( )处的内容,将答案写入答题纸对应栏内。


答题卡
加油
纠错
得分:0